package com.ruoyi.system.domain.construction.strategy;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import com.ruoyi.system.domain.construction.StrategyVr;
import com.ruoyi.system.domain.zhuangxiumain.shopMain.SupplierInfo;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;
import java.util.List;

/**
 * 施工攻略对象 construction_strategy
 * 
 * @author zhangshaocong
 * @date 2020-12-03
 */
public class ConstructionStrategy extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 施工攻略ID */
    private Long constructionStrategyId;

    /** 店铺ID */
    @Excel(name = "店铺ID")
    private Long constructionStrategySupplier;

    /** 施工攻略标题 */
    @Excel(name = "施工攻略标题")
    private String constructionStrategyTitle;

    /** 点赞数 */
    @Excel(name = "点赞数")
    private Long constructionStrategyGood;

    /** 收藏数 */
    @Excel(name = "收藏数")
    private Long constructionStrategyCollection;

    /** 回复量 */
    @Excel(name = "回复量")
    private Long constructionStrategyComment;

    /** 发布时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发布时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date constructionStrategyTime;

    /** 最后修改时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "最后修改时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date modifiedTime;

    private String shopsName;
    private String strategyZhutuUrl;
    private Integer likeCount;
    private Integer collectedCount;

//    private SupplierInfo supplierInfo;
//
//    private List<Long> supplierIds;



    /** 首页主题 */
    @Excel(name = "首页主题")
    private String strategyTheme;

    /** 用户ID */
    @Excel(name = "用户ID")
    private Long userId;

    /** 几居室 */
    @Excel(name = "几居室")
    private String strategyHabitable;

    /** 什么年代 */
    @Excel(name = "什么年代")
    private String strategyName;

    /** 多少米 */
    @Excel(name = "多少米")
    private String meters;

    /** 多少钱 */
    @Excel(name = "多少钱")
    private String price;

    /** 风格 */
    @Excel(name = "风格")
    private String strategyStyle;

    /** 预计多少钱 */
    @Excel(name = "预计多少钱")
    private String priceYusuan;

    /** 方式(1半包 2整包) */
    @Excel(name = "方式(1半包 2整包)")
    private String fangshi;

    /** 视频URL */
    @Excel(name = "视频URL")
    private String shipinUrl;

    /** 1整屋案例  2 3D设计 */
    @Excel(name = "1整屋案例  2 3D设计")
    private String strategyType;

    private StrategyVr strategyVr;



    /** 0未审核  1已审核 */
    @Excel(name = "0未审核  1已审核")
    private String state;

    /** VR全景地址 */
    @Excel(name = "VR全景地址")
    private String vrUrl;

    /* vr主题 */
    private String vrZhuti;
    /** vr首页轮播图*/
    private String vrShouyeUrl;


    /** VR全景ID */
    private Long vrId;
    private String supplierPic;

    public String getSupplierPic() {
        return supplierPic;
    }

    public void setSupplierPic(String supplierPic) {
        this.supplierPic = supplierPic;
    }

    public String getState() {
        return state;
    }

    public void setState(String state) {
        this.state = state;
    }

    public String getVrUrl() {
        return vrUrl;
    }

    public void setVrUrl(String vrUrl) {
        this.vrUrl = vrUrl;
    }

    public String getVrZhuti() {
        return vrZhuti;
    }

    public void setVrZhuti(String vrZhuti) {
        this.vrZhuti = vrZhuti;
    }

    public String getVrShouyeUrl() {
        return vrShouyeUrl;
    }

    public void setVrShouyeUrl(String vrShouyeUrl) {
        this.vrShouyeUrl = vrShouyeUrl;
    }

    public Long getVrId() {
        return vrId;
    }

    public void setVrId(Long vrId) {
        this.vrId = vrId;
    }

    public StrategyVr getStrategyVr() {
        return strategyVr;
    }

    public void setStrategyVr(StrategyVr strategyVr) {
        this.strategyVr = strategyVr;
    }

    public String getStrategyZhutuUrl() {
        return strategyZhutuUrl;
    }

    public void setStrategyZhutuUrl(String strategyZhutuUrl) {
        this.strategyZhutuUrl = strategyZhutuUrl;
    }

    public String getStrategyTheme() {
        return strategyTheme;
    }

    public void setStrategyTheme(String strategyTheme) {
        this.strategyTheme = strategyTheme;
    }

    public Long getUserId() {
        return userId;
    }

    public void setUserId(Long userId) {
        this.userId = userId;
    }

    public String getStrategyHabitable() {
        return strategyHabitable;
    }

    public void setStrategyHabitable(String strategyHabitable) {
        this.strategyHabitable = strategyHabitable;
    }

    public String getStrategyName() {
        return strategyName;
    }

    public void setStrategyName(String strategyName) {
        this.strategyName = strategyName;
    }

    public String getMeters() {
        return meters;
    }

    public void setMeters(String meters) {
        this.meters = meters;
    }

    public String getPrice() {
        return price;
    }

    public void setPrice(String price) {
        this.price = price;
    }

    public String getStrategyStyle() {
        return strategyStyle;
    }

    public void setStrategyStyle(String strategyStyle) {
        this.strategyStyle = strategyStyle;
    }

    public String getPriceYusuan() {
        return priceYusuan;
    }

    public void setPriceYusuan(String priceYusuan) {
        this.priceYusuan = priceYusuan;
    }

    public String getFangshi() {
        return fangshi;
    }

    public void setFangshi(String fangshi) {
        this.fangshi = fangshi;
    }

    public String getShipinUrl() {
        return shipinUrl;
    }

    public void setShipinUrl(String shipinUrl) {
        this.shipinUrl = shipinUrl;
    }

    public String getStrategyType() {
        return strategyType;
    }

    public void setStrategyType(String strategyType) {
        this.strategyType = strategyType;
    }

    public void setConstructionStrategyId(Long constructionStrategyId)
    {
        this.constructionStrategyId = constructionStrategyId;
    }

    public Long getConstructionStrategyId() 
    {
        return constructionStrategyId;
    }
    public void setConstructionStrategySupplier(Long constructionStrategySupplier) 
    {
        this.constructionStrategySupplier = constructionStrategySupplier;
    }

    public Long getConstructionStrategySupplier() 
    {
        return constructionStrategySupplier;
    }
    public void setConstructionStrategyTitle(String constructionStrategyTitle) 
    {
        this.constructionStrategyTitle = constructionStrategyTitle;
    }

    public String getConstructionStrategyTitle() 
    {
        return constructionStrategyTitle;
    }
    public void setConstructionStrategyGood(Long constructionStrategyGood) 
    {
        this.constructionStrategyGood = constructionStrategyGood;
    }

    public Long getConstructionStrategyGood() 
    {
        return constructionStrategyGood;
    }
    public void setConstructionStrategyCollection(Long constructionStrategyCollection) 
    {
        this.constructionStrategyCollection = constructionStrategyCollection;
    }

    public Long getConstructionStrategyCollection() 
    {
        return constructionStrategyCollection;
    }
    public void setConstructionStrategyComment(Long constructionStrategyComment) 
    {
        this.constructionStrategyComment = constructionStrategyComment;
    }

    public Long getConstructionStrategyComment() 
    {
        return constructionStrategyComment;
    }
    public void setConstructionStrategyTime(Date constructionStrategyTime) 
    {
        this.constructionStrategyTime = constructionStrategyTime;
    }

    public Integer getLikeCount() {
        return likeCount;
    }

    public void setLikeCount(Integer likeCount) {
        this.likeCount = likeCount;
    }

    public Integer getCollectedCount() {
        return collectedCount;
    }

    public void setCollectedCount(Integer collectedCount) {
        this.collectedCount = collectedCount;
    }

    public Date getConstructionStrategyTime()
    {
        return constructionStrategyTime;
    }
    public void setModifiedTime(Date modifiedTime) 
    {
        this.modifiedTime = modifiedTime;
    }

    public Date getModifiedTime() 
    {
        return modifiedTime;
    }

    public String getShopsName() {
        return shopsName;
    }

    public void setShopsName(String shopsName) {
        this.shopsName = shopsName;
    }



    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("constructionStrategyId", getConstructionStrategyId())
            .append("constructionStrategySupplier", getConstructionStrategySupplier())
            .append("constructionStrategyTitle", getConstructionStrategyTitle())
            .append("constructionStrategyGood", getConstructionStrategyGood())
            .append("constructionStrategyCollection", getConstructionStrategyCollection())
            .append("constructionStrategyComment", getConstructionStrategyComment())
            .append("constructionStrategyTime", getConstructionStrategyTime())
            .append("modifiedTime", getModifiedTime())
                .append("shopsName", getShopsName())
                .append("strategyTheme", getStrategyTheme())
                .append("userId", getUserId())
                .append("strategyHabitable", getStrategyHabitable())
                .append("strategyName", getStrategyName())
                .append("meters", getMeters())
                .append("price", getPrice())
                .append("strategyStyle", getStrategyStyle())
                .append("priceYusuan", getPriceYusuan())
                .append("fangshi", getFangshi())
                .append("shipinUrl", getShipinUrl())
                .append("strategyType", getStrategyType())
                .append("strategyZhutuUrl", getStrategyZhutuUrl())
            .toString();
    }
}
